Оценка качества моделей
Задачи машинного обучения с учителем предполагают построение модели, которая восстанавливает зависимость между признаковым описанием объектов и целевой переменной. Однако построить модель — лишь первый шаг.
Чтобы понять, насколько хорошо она работает, и выбрать наилучший вариант среди возможных, необходимо уметь корректно оценивать качество её предсказаний.
В этой главе мы и поговорим о том, как корректно оценивать качество моделей. Но сперва зафиксируем определение.
Метрика качества — это количественный критерий, который позволяет формально оценить, насколько хорошо модель решает поставленную задачу, и сравнивать между собой разные модели.
Прежде всего возникает вопрос: что именно измеряет выбранная метрика качества и насколько она соответствует цели задачи?
В машинном обучении различают два типа метрик:
- офлайн-метрики, которые вычисляются на исторических данных ещё до развёртывания модели;
- онлайн-метрики, отражающие поведение реальных пользователей или системы после внедрения модели.
Во втором параграфе главы мы сосредоточимся именно на офлайн-метриках, используемых при обучении моделей и служащих основой для их предварительной оценки.
Однако одной лишь метрики недостаточно — важно, как именно мы получаем оценку качества.
В машинном обучении данные обычно разделяют на обучающие и тестовые, но сам процесс разбиения может быть нетривиальным. Некорректное разделение способно привести к ошибочным выводам о модели: например, к завышенной оценке качества, если часть обучающих данных «протекла» в тест (что в соревновательном комьюнити часто называют дата-ликами), или к заниженной, если валидационное множество слишком отличается от обучающего или содержит ошибки.
Чтобы это предотвратить, используется обычное разбиение на train и test(метод hold-out) и кросс-валидация, которая является его обобщением. Их мы рассмотрим в третьем параграфе главы.
Но даже если у нас есть подходящая метрика и надёжная схема оценки, качество работы модели далеко не всегда оказывается оптимальным.
Многие алгоритмы имеют гиперпараметры — необучаемые параметры, которые задаются до начала обучения и существенно влияют на поведение модели: глубина дерева, сила регуляризации, скорость обучения, количество соседей и многое другое. В отличие от параметров, которые обучаются по данным, гиперпараметры нужно выбирать заранее.
Подробно о методах поиска и настройки гиперпараметров мы расскажем в четвёртом параграфе главы.
Примечание
Материал этой главы ориентирован на практическое применение, поэтому вы найдёте множество примеров реализации методов и много ссылок на полезные функции из популярных библиотек.
К каждому параграфу прилагаются практические задания в формате Jupyter-ноутбуков, которые помогут закрепить изученный материал.
Давайте приступим!